#pragma once

#include "Alice/ECS/System.hpp"
#include "Alice/Graphs/ClipTextureRenderer.h"

namespace Alice
{

/*
    精灵动画渲染系统
    负责处理精灵动画
    此系统关注的组件：SpriteAnimComp, TransformComp, ColorComp
*/
class SpriteAnimRenderSys : public System
{
public:
    inline void SetShader(const Shader& shader)
    {
        m_clip_texture_renderer.SetShader(shader);
    }

private:
    void Before();
    void OnUpdate();
    void After();
    
    ClipTextureRenderer m_clip_texture_renderer;
};

} // namespace Alice
